<?php
 include 'database.package.php';
 include 'admin.package.php';
 include 'anotacao.package.php';
 include 'user.package.php';


if(!isset($_REQUEST['opt'])){
	die("Acesso Indevido");
}else{
	
	$opt = $_POST['opt'];
	$entrada = $_POST;
	
	//constantes
	
	define("LOGIN",0);
	define("LOGOUT",1);
	define("VERIFICA_LOGIN",102);
	
	define("CRIAR_CATEGORIA",2);
	define("APAGAR_CATEGORIA",3);
	
	define("CRIAR_TOPICO",4);
	define("APAGAR_TOPICO",5);
	define("LISTAR_TOPICO",6);
	define("ATUALIZAR_TOPICO",7);
	
	define("CRIAR_ANOTACAO",8);
	define("APAGAR_ANOTACAO",9);
	define("LISTAR_ANOTACAO",10);
	define("ATUALIZAR_ANOTACAO",11);
	define("CONTAR_ANOTACAO",12);
	define("RECUPERA_ANOTACAO",13);
	
	$adminCont = new AdministradorControlador();
	$textoCont = new AnotacaoControlador();
	
	switch ($opt){
		
		case LOGIN: 
			
			$result = $adminCont->login($entrada);
			if($result['codigo']==0){
			header("location:../main.php");
			}else{
				header("location:../login.php?error=".$result['mensagem']);
			}
			
		break;
		
		case LOGOUT:
			
			$adminCont->logout();
				
		break;
		case CRIAR_ANOTACAO:
		
			if($textoCont->inserirAnotacao($entrada)){
				header("location:../anotacao.php");
			}
		
		break;
		case ATUALIZAR_ANOTACAO:
		
			if($textoCont->atualizarAnotacao($entrada)){
				header("location:../anotacao.php");
			}
		
			break;
		case LISTAR_ANOTACAO:
		
			$Anotacoes =  $textoCont->listarAnotacao();
			
			$arrayAnotacoes = array();
			
			foreach ($Anotacoes as $A){
			
				 $A->setTexto(str_replace("\r\n","<br/>",$A->getTexto()));
			}
			
			foreach ($Anotacoes as $A){
				
				$arrayAnotacoes[] = $A->toArray();
			}
			
			echo json_encode($arrayAnotacoes);
		
			break;
		case CONTAR_ANOTACAO:
		
			echo $textoCont->contarAnotacao();
			
		break;
		
		case APAGAR_ANOTACAO:
		
			$retorno = array();
			if($textoCont->apagarAnotacao($entrada['id'])){
				$retorno['valor'] = true;
				
			}else{
				
				$retorno['valor'] = false;
				$retorno['mensagem'] = "Permissão negada";
				
			}
			
			echo json_encode($retorno);
		
			break;
			
			case VERIFICA_LOGIN:
			
				$resposta = array();
				
				$resposta["logged"] = $adminCont->verificaLogin();
				
				if($resposta["logged"]){
					//session_start();
					$resposta['user'] = $_SESSION['admin']->toArray();
						
				}
				
				echo json_encode($resposta);
			
			break;
		
			case RECUPERA_ANOTACAO:
			
				$resposta = array();
				$anotacao = $textoCont->recuperaAnotacao($entrada['id']);
				if($anotacao!=null){
					
					$resposta['sucesso'] = true;
					$resposta['anotacao'] = $anotacao->toArray();
					
					
				}else{
					
					$resposta['sucesso'] = false;
					$resposta['anotacao'] = null;
					$resposta['mensagem'] = "Acesso indevido";
					
				}
				echo json_encode($resposta);
			
				break;
	}
	
}

?>